<?php
include_once 'Retriever.php';
include_once '../Model/Route.php';
include_once '../Utility/simplehtmldom/simple_html_dom.php';
include_once '../Model/Location.php';

class ACtraveltime extends Retriever {

		Public $link;
		public $text;
		public $it_da;
		public $it_a;
		
		
	function __construct() {
		
		//$this->link = $link;
		
	}
	
	
	function connectToAtac($link){
		//Costruisco l'url con i parametri giusti
				$url= "http://atacmobile.it/atacmobile.php?nav=3&service=tempi&id_it=$link&t=selit#selit";
								
				$pageContent = $this->getHTMLPageFromURL($url);	
	
	if ($pageContent==false)
				{
				//throw new CommunicationException ("ACBusWaitingTimes: No Response from ATAC", 0);
					return null;
				}	
				$text = str_get_html($pageContent);
				//$html = str_get_html($pageContent);		//prendo il codice html della pagina
				//$text = $html->plaintext; //prendo la pagina in formato testo
			//verifico la presenza di errori
				$pos = strpos($text,"servizio");
				$pos2 = strpos($text,"attivo");
				$pos3 = strpos($text,"non");

			//Il problema riguarda l'intero servizio
				if(($pos==true) && ($pos2==true) && ($pos3==true)) {
 					throw new CommunicationException ("ACParking: No Response from ATAC", 0);
					return null;
				}
			
			//Il problema riguarda solo quella richiesta
				if ((strpos($text, "tecnici")==true) && ((strpos($text, "problemi")==true))) {
					throw new CommunicationException ("ACParking: Service Not Available", 0);
					return null;
				}
				
			//	$html->clear();
			//	unset($html);
				return $text;

	}
	
	function parsing($text,$it_da,$it_a){
		
		
		$inizio = strstr ($text, 't=seltr#seltr">');
		if($inizio==FALSE)
		return 0;
		
			//$inizio=strstr ($text, 't=seltr#seltr">');
			
			$inizionum=strpos ($text, 't=seltr#seltr">');
			$fine=strpos($inizio,'<p>I tempi sono ricalcolati ogni 5 minuti');
			$blocco=substr($text, $inizionum+strlen('t=seltr#seltr">'),$fine-strlen('t=seltr#seltr">'));
			$arco=strstr($blocco, $it_a);
			$posi=strpos($arco,'width="15" alt="*"/>');
			$minuti=substr($arco,$posi+strlen('width="15" alt="*"/>'),2);
			$minuti=trim($minuti);
			if($minuti=='-' || $minuti=='Da')
				return 0;
			else
				{
					$condizioni=strstr($arco,'minuti');
					$posparentesi=strpos($condizioni,')');
					$condizione=substr($condizioni,6,$posparentesi-6);
					$condizione=trim($condizione);
					$condizione=str_replace('(','',$condizione);
					if($condizione == '')
					{
						return 0;
					}
					else{
							$time[]=$minuti;
							$time[]=$condizione;
							return $time;
						}
					//echo '<condizione>';
					//echo $condizione;
					//echo '</condizione>';
					//return $minuti*60;	
					}
				
			
			
			
			//echo "minuti=$minuti";
			/*$i=0;
			while($i<strlen($blocco))
			{
				$itag=strstr($blocco,'<');
				$ftag=strpos($itag,'>');
				$tag=substr($blocco,$itag,$ftag);
				echo "TAG= $tag";
				$blocco=str_replace("<$tag>", ' ',$blocco);
				$i=$i+$ftag;
			
			}*/
			//echo "ARCO = $blocco";
			//$arco=strstr($text, $it_a);
		


		
		return 0;
		}
	
	/*funzione parsing deve  tornare il valore dell'arco*/
	
	
		
	
	
}

?>